home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 December / 2004-12 CHIP.iso / Internet / NVU 0.50 for Windows / nvu-0.50-win32-installer-full.exe / {app} / chrome / toolkit.jar / content / mozapps / xpinstall / xpinstallConfirm.js < prev    next >
Encoding:
Text File  |  2004-02-29  |  2.2 KB  |  75 lines

  1. var XPInstallConfirm = 
  2.   _installCountdown: 2,
  3.   _installCountdownInterval: -1,
  4.   _param: null
  5. };
  6.  
  7.  
  8. XPInstallConfirm.init = function ()
  9. {
  10.   var bundle = document.getElementById("xpinstallConfirmStrings");
  11.   
  12.   this._param = window.arguments[0].QueryInterface(Components.interfaces.nsIDialogParamBlock);
  13.   if (!this._param)
  14.     close();
  15.   
  16.   this._param.SetInt(0, 1); // The default return value is "Cancel"
  17.   
  18.   var itemList = document.getElementById("itemList");
  19.   
  20.   var numItemsToInstall = this._param.GetInt(1);
  21.   for (var i = 0; i < numItemsToInstall; ++i) {
  22.     var installItem = document.createElement("installitem");
  23.     itemList.appendChild(installItem);
  24.  
  25.     installItem.name = this._param.GetString(i);
  26.     installItem.url = this._param.GetString(++i);
  27.     var icon = this._param.GetString(++i);
  28.     if (icon != "")
  29.       installItem.icon = icon;
  30.     var cert = this._param.GetString(++i);
  31.     installItem.cert = cert || bundle.getString("Unsigned");
  32.     installItem.signed = cert ? "true" : "false";
  33.   }
  34.   
  35.   var introString = bundle.getString("itemWarningIntroSingle");
  36.   if (numItemsToInstall > 4)
  37.     introString = bundle.getFormattedString("itemWarningIntroMultiple", [numItemsToInstall / 4]);
  38.   document.getElementById("itemWarningIntro").setAttribute("value", introString);  
  39.   
  40.   var okButton = document.documentElement.getButton("accept");
  41.   okButton.label = bundle.getFormattedString("installButtonDisabledLabel", [this._installCountdown]);
  42.   okButton.disabled = true;
  43.   okButton.focus();
  44.   
  45.   this._installCountdownInterval = setInterval("XPInstallConfirm.okButtonCountdown()", 1000);
  46. }
  47.  
  48. XPInstallConfirm.okButtonCountdown = function ()
  49. {
  50.   var okButton = document.documentElement.getButton("accept");
  51.   var bundle = document.getElementById("xpinstallConfirmStrings");
  52.   if (this._installCountdown-- <= 1) {
  53.     okButton.label = bundle.getString("installButtonLabel");
  54.     okButton.disabled = false;
  55.     clearInterval(this._installCountdownInterval);
  56.   }
  57.   else
  58.     okButton.label = bundle.getFormattedString("installButtonDisabledLabel", [this._installCountdown]);
  59. }
  60.     
  61. XPInstallConfirm.onOK = function ()
  62. {
  63.   this._param.SetInt(0, 0);
  64.   return true;
  65. }
  66.  
  67. XPInstallConfirm.onCancel = function ()
  68. {
  69.   this._param.SetInt(0, 1);
  70.   return true;
  71. }
  72.  
  73.  
  74.